package parser.prestige.meldunek.xml;

import parser.prestige.AbstractNode;
import parser.prestige.IXmlElement;

import javax.xml.stream.XMLEventFactory;
import javax.xml.stream.XMLEventWriter;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.events.XMLEvent;

/**
 * Created with IntelliJ IDEA.
 * User: marcin.kaluza
 * Date: 02.12.13
 * Time: 09:38
 * To change this template use File | Settings | File Templates.
 */
public class Pracownik extends AbstractNode implements IXmlElement {
    private String pracownik;
    private String ilosc;
    private String koszt;

    public Pracownik(String pracownik, String ilosc, String koszt) {
        this.pracownik = pracownik;
        this.ilosc = ilosc;
        this.koszt = koszt;
    }

    public Pracownik() {
        this.pracownik = "";
        this.ilosc = "";
        this.koszt = "";
    }

    public String getPracownik() {
        return pracownik;
    }

    public void setPracownik(String pracownik) {
        this.pracownik = pracownik;
    }

    public String getIlosc() {
        return ilosc;
    }

    public void setIlosc(String ilosc) {
        this.ilosc = ilosc;
    }

    public String getKoszt() {
        return koszt;
    }

    public void setKoszt(String koszt) {
        this.koszt = koszt;
    }

    @Override
    public void createAsNode(XMLEventWriter eventWriter, int tabValue) throws XMLStreamException{
        XMLEventFactory eventFactory = XMLEventFactory.newInstance();
        XMLEvent endLineEvent = eventFactory.createDTD("\n");
        XMLEvent tabulatorEvent = eventFactory.createDTD("\t");

        //TAG:<Pracownik>
        addTabs(eventWriter, tabValue);
        eventWriter.add(eventFactory.createStartElement("", "", "Pracownik"));
        eventWriter.add(endLineEvent);

        //składowe Pracownik
        addNode(eventWriter, "Pracownik", pracownik, tabValue + 1);
        addNode(eventWriter, "Ilosc", ilosc, tabValue + 1);
        addNode(eventWriter, "Koszt", koszt, tabValue + 1);
        //koniec składowych Pracownik

        //TAG:</Pracownik>
        addTabs(eventWriter, tabValue);
        eventWriter.add(eventFactory.createEndElement("", "", "Pracownik"));
        eventWriter.add(endLineEvent);
    }
}
